Java এ multi-dimensional arrays একটি বিশেষ ধরনের array যা একাধিক ডাইমেনশনে (dimension) উপাদান ধারণ করতে সক্ষম। এটি মূলত একটি array যার মধ্যে আরো অন্য array থাকে। Arrays.deepToString() মেথড ব্যবহার করা হয় যখন multi-dimensional arrays বা nested arrays এর উপাদানগুলোকে স্ট্রিং ফর্ম্যাটে প্রিন্ট করতে হয়। এটি সাধারণ Arrays.toString() থেকে আলাদা, কারণ deepToString() nested arrays বা multi-dimensional arrays এর সব উপাদানকে স্ট্রিং আউটপুটে দেখতে সহায়তা করে।
1. Multi-dimensional Arrays in Java
Multi-dimensional arrays হল অ্যারের একটি কাঠামো যেখানে প্রতিটি উপাদান আবার একটি অ্যারে হতে পারে। সাধারণত, 2D array, 3D array, অথবা আরও বড় সংখ্যক dimension ব্যবহার করা হয়।
Syntax:
dataType[][] arrayName;
এখানে dataType হচ্ছে উপাদানের টাইপ (যেমন int, String ইত্যাদি), এবং arrayName হলো অ্যারের নাম। দুইটি ডাইমেনশনের অ্যারে তৈরির জন্য দুইটি কৌণিক বন্ধনীর (square brackets) ব্যবহার হয়।
উদাহরণ: 2D Array
public class MultiDimensionalArrayExample {
public static void main(String[] args) {
// 2D Array Declaration
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// Printing the 2D Array using nested loops
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
System.out.print(matrix[i][j] + " ");
}
System.out.println(); // Move to the next line
}
}
}
Output:
1 2 3
4 5 6
7 8 9
ব্যাখ্যা:
- এখানে
matrixএকটি 2D অ্যারে যা তিনটি সারি (rows) এবং তিনটি কলাম (columns) ধারণ করে। - নেস্টেড লুপের মাধ্যমে আমরা matrix এর সব উপাদান প্রিন্ট করেছি।
2. Arrays.deepToString() Method
Arrays.deepToString() মেথডটি ব্যবহার করা হয় multi-dimensional arrays বা nested arrays-এর সব উপাদান স্ট্রিং আকারে দেখানোর জন্য। এটি একাধিক স্তরের অ্যারে (যেমন 2D, 3D arrays) এর ক্ষেত্রে Arrays.toString() এর চেয়ে আরও কার্যকর, কারণ এটি nested arrays এর ভিতরের উপাদানগুলোও সঠিকভাবে স্ট্রিং আকারে রেন্ডার করে।
Syntax:
Arrays.deepToString(Object[] array);
এটি একটি Object array গ্রহণ করে এবং একটি স্ট্রিং রিটার্ন করে যা সেই অ্যারের উপাদানগুলিকে প্রতিনিধিত্ব করে।
উদাহরণ:
import java.util.Arrays;
public class DeepToStringExample {
public static void main(String[] args) {
// 2D Array Declaration
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
// Printing the 2D Array using Arrays.deepToString
System.out.println("2D Array using deepToString: " + Arrays.deepToString(matrix));
}
}
Output:
2D Array using deepToString: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
ব্যাখ্যা:
Arrays.deepToString()মেথডটি matrix নামক 2D অ্যারেটি প্রিন্ট করেছে এবং এর প্রতিটি উপাদান সঠিকভাবে স্ট্রিং আকারে দেখিয়েছে, যেখানে প্রত্যেকটি সাব-অ্যারে (যেমন{1, 2, 3},{4, 5, 6}ইত্যাদি) একটি এলিমেন্ট হিসেবে দেখানো হয়েছে।
3. More Examples of deepToString with Multi-dimensional Arrays
3.1. 3D Array Example
import java.util.Arrays;
public class DeepToString3DArray {
public static void main(String[] args) {
// 3D Array Declaration
int[][][] cube = {
{
{1, 2},
{3, 4}
},
{
{5, 6},
{7, 8}
}
};
// Printing the 3D Array using Arrays.deepToString
System.out.println("3D Array using deepToString: " + Arrays.deepToString(cube));
}
}
Output:
3D Array using deepToString: [[[1, 2], [3, 4]], [[5, 6], [7, 8]]]
ব্যাখ্যা:
cubeএকটি 3D অ্যারে, যেখানে প্রথমে 2D অ্যারে রয়েছে এবং সেগুলো আবার 1D অ্যারে ধারণ করছে।Arrays.deepToString()মেথডের মাধ্যমে এই 3D অ্যারের সব উপাদান স্ট্রিং আকারে রেন্ডার করা হয়েছে।
4. Practical Example: Data Management with Multi-dimensional Arrays and deepToString
ধরা যাক, আমরা একটি 3D array ব্যবহার করে একটি শিক্ষার্থীর পরীক্ষার ফলাফল সংরক্ষণ করছি, যেখানে প্রতিটি শিক্ষার্থী একাধিক বিষয়ের জন্য পরীক্ষার ফলাফল দিয়েছে।
import java.util.Arrays;
public class StudentGradesExample {
public static void main(String[] args) {
// 3D Array Declaration (Students x Subjects x Grades)
int[][][] grades = {
{
{85, 90, 88}, // Student 1: Subject 1, 2, 3 grades
{92, 94, 89} // Student 1: Subject 4, 5, 6 grades
},
{
{78, 80, 85}, // Student 2: Subject 1, 2, 3 grades
{88, 91, 87} // Student 2: Subject 4, 5, 6 grades
}
};
// Printing the 3D Array using Arrays.deepToString
System.out.println("Students' Grades: " + Arrays.deepToString(grades));
}
}
Output:
Students' Grades: [[[85, 90, 88], [92, 94, 89]], [[78, 80, 85], [88, 91, 87]]]
ব্যাখ্যা:
- এখানে
gradesএকটি 3D অ্যারে, যেখানে প্রথম ডাইমেনশন শিক্ষার্থীদের প্রতিনিধিত্ব করছে, দ্বিতীয় ডাইমেনশন বিভিন্ন বিষয় এবং তৃতীয় ডাইমেনশন সেই বিষয়ে পাওয়া গ্রেড। Arrays.deepToString()মেথড ব্যবহার করে, এই 3D অ্যারের সমস্ত উপাদান সঠিকভাবে প্রিন্ট করা হয়েছে।
- Multi-dimensional arrays Java-তে বিভিন্ন ডাইমেনশনে ডেটা সংরক্ষণ করতে ব্যবহৃত হয়, যেমন 2D array, 3D array ইত্যাদি।
Arrays.deepToString()মেথড multi-dimensional arrays বা nested arrays এর উপাদানগুলোকে সঠিকভাবে স্ট্রিং আকারে প্রদর্শন করতে সহায়তা করে।- এটি একটি শক্তিশালী উপায় যখন আপনার কাজ করতে হয় অনেক স্তরের অ্যারে (যেমন 2D, 3D arrays) এবং আপনি সেগুলির উপাদানগুলি একসাথে স্ট্রিং আউটপুটে দেখতে চান।
Read more